package com.opentae.data.mall.examples;

import com.opentae.core.mybatis.SgExample;
import com.opentae.core.mybatis.example.EntityColumn;
import com.opentae.core.mybatis.example.EntityTable;
import com.opentae.core.mybatis.mapperhelper.EntityHelper;
import com.opentae.data.mall.beans.MallWallet;

import java.util.*;
public class MallWalletExample extends SgExample<MallWalletExample.Criteria> {
    public static final Class<MallWallet> beanClass = MallWallet.class;
    public static final EntityTable entityTable = EntityHelper.getEntityTable(beanClass);
    public static EntityColumn totalReward;
    public static EntityColumn walletId;
    public static EntityColumn voucher;
    public static EntityColumn inviteReward;
    public static EntityColumn userId;
    public static EntityColumn mallMoney;
    static {
        Set<EntityColumn> columns = entityTable.getEntityClassColumns();
        Map<String, EntityColumn> listMap = new HashMap<>();
        for (EntityColumn column : columns) {
            listMap.put(column.getProperty(), column);
        }
        totalReward = listMap.get("totalReward");
        walletId = listMap.get("walletId");
        voucher = listMap.get("voucher");
        inviteReward = listMap.get("inviteReward");
        userId = listMap.get("userId");
        mallMoney = listMap.get("mallMoney");
        }

    public MallWalletExample() {
        this.setTableAlias(entityTable.getName());
    }

    @Override
    public EntityTable getEntityTable() {
        return entityTable;
    }

    @Override
    protected MallWalletExample.Criteria createCriteriaInternal() {
        return new MallWalletExample.Criteria(this);
    }

    public static class Criteria extends SgExample.GeneratedCriteria<Criteria> {
        protected Criteria(SgExample example) {
            super(example);
        }

        public MallWalletExample.Criteria andTotalRewardIsNull() {
            return isNull(totalReward);
        }

        public MallWalletExample.Criteria andTotalRewardIsNotNull() {
            return isNotNull(totalReward);
        }

        public MallWalletExample.Criteria andTotalRewardEqualTo(String value) {
            return equalTo(totalReward, value);
        }

        public MallWalletExample.Criteria andTotalRewardNotEqualTo(String value) {
            return notEqualTo(totalReward, value);
        }

        public MallWalletExample.Criteria andTotalRewardGreaterThan(String value) {
            return greaterThan(totalReward, value);
        }

        public MallWalletExample.Criteria andTotalRewardGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(totalReward, value);
        }

        public MallWalletExample.Criteria andTotalRewardLessThan(String value) {
            return lessThan(totalReward, value);
        }

        public MallWalletExample.Criteria andTotalRewardLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(totalReward, value);
        }

        public MallWalletExample.Criteria andTotalRewardLike(String value) {
            return like(totalReward, value);
        }

        public MallWalletExample.Criteria andTotalRewardNotLike(String value) {
            return notLike(totalReward, value);
        }

        public MallWalletExample.Criteria andTotalRewardIn(List<String> values) {
            return in(totalReward, values);
        }

        public MallWalletExample.Criteria andTotalRewardNotIn(List<String> values) {
            return notIn(totalReward, values);
        }

        public MallWalletExample.Criteria andTotalRewardBetween(String value1, String value2) {
            return between(totalReward, value1, value2);
        }

        public MallWalletExample.Criteria andTotalRewardNotBetween(String value1, String value2) {
            return notBetween(totalReward, value1, value2);
        }
        public MallWalletExample.Criteria andWalletIdIsNull() {
            return isNull(walletId);
        }

        public MallWalletExample.Criteria andWalletIdIsNotNull() {
            return isNotNull(walletId);
        }

        public MallWalletExample.Criteria andWalletIdEqualTo(Long value) {
            return equalTo(walletId, value);
        }

        public MallWalletExample.Criteria andWalletIdNotEqualTo(Long value) {
            return notEqualTo(walletId, value);
        }

        public MallWalletExample.Criteria andWalletIdGreaterThan(Long value) {
            return greaterThan(walletId, value);
        }

        public MallWalletExample.Criteria andWalletIdGreaterThanOrEqualTo(Long value) {
            return greaterThanOrEqualTo(walletId, value);
        }

        public MallWalletExample.Criteria andWalletIdLessThan(Long value) {
            return lessThan(walletId, value);
        }

        public MallWalletExample.Criteria andWalletIdLessThanOrEqualTo(Long value) {
            return lessThanOrEqualTo(walletId, value);
        }

        public MallWalletExample.Criteria andWalletIdIn(List<Long> values) {
            return in(walletId, values);
        }

        public MallWalletExample.Criteria andWalletIdNotIn(List<Long> values) {
            return notIn(walletId, values);
        }

        public MallWalletExample.Criteria andWalletIdBetween(Long value1, Long value2) {
            return between(walletId, value1, value2);
        }

        public MallWalletExample.Criteria andWalletIdNotBetween(Long value1, Long value2) {
            return notBetween(walletId, value1, value2);
        }
        public MallWalletExample.Criteria andVoucherIsNull() {
            return isNull(voucher);
        }

        public MallWalletExample.Criteria andVoucherIsNotNull() {
            return isNotNull(voucher);
        }

        public MallWalletExample.Criteria andVoucherEqualTo(String value) {
            return equalTo(voucher, value);
        }

        public MallWalletExample.Criteria andVoucherNotEqualTo(String value) {
            return notEqualTo(voucher, value);
        }

        public MallWalletExample.Criteria andVoucherGreaterThan(String value) {
            return greaterThan(voucher, value);
        }

        public MallWalletExample.Criteria andVoucherGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(voucher, value);
        }

        public MallWalletExample.Criteria andVoucherLessThan(String value) {
            return lessThan(voucher, value);
        }

        public MallWalletExample.Criteria andVoucherLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(voucher, value);
        }

        public MallWalletExample.Criteria andVoucherLike(String value) {
            return like(voucher, value);
        }

        public MallWalletExample.Criteria andVoucherNotLike(String value) {
            return notLike(voucher, value);
        }

        public MallWalletExample.Criteria andVoucherIn(List<String> values) {
            return in(voucher, values);
        }

        public MallWalletExample.Criteria andVoucherNotIn(List<String> values) {
            return notIn(voucher, values);
        }

        public MallWalletExample.Criteria andVoucherBetween(String value1, String value2) {
            return between(voucher, value1, value2);
        }

        public MallWalletExample.Criteria andVoucherNotBetween(String value1, String value2) {
            return notBetween(voucher, value1, value2);
        }
        public MallWalletExample.Criteria andInviteRewardIsNull() {
            return isNull(inviteReward);
        }

        public MallWalletExample.Criteria andInviteRewardIsNotNull() {
            return isNotNull(inviteReward);
        }

        public MallWalletExample.Criteria andInviteRewardEqualTo(String value) {
            return equalTo(inviteReward, value);
        }

        public MallWalletExample.Criteria andInviteRewardNotEqualTo(String value) {
            return notEqualTo(inviteReward, value);
        }

        public MallWalletExample.Criteria andInviteRewardGreaterThan(String value) {
            return greaterThan(inviteReward, value);
        }

        public MallWalletExample.Criteria andInviteRewardGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(inviteReward, value);
        }

        public MallWalletExample.Criteria andInviteRewardLessThan(String value) {
            return lessThan(inviteReward, value);
        }

        public MallWalletExample.Criteria andInviteRewardLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(inviteReward, value);
        }

        public MallWalletExample.Criteria andInviteRewardLike(String value) {
            return like(inviteReward, value);
        }

        public MallWalletExample.Criteria andInviteRewardNotLike(String value) {
            return notLike(inviteReward, value);
        }

        public MallWalletExample.Criteria andInviteRewardIn(List<String> values) {
            return in(inviteReward, values);
        }

        public MallWalletExample.Criteria andInviteRewardNotIn(List<String> values) {
            return notIn(inviteReward, values);
        }

        public MallWalletExample.Criteria andInviteRewardBetween(String value1, String value2) {
            return between(inviteReward, value1, value2);
        }

        public MallWalletExample.Criteria andInviteRewardNotBetween(String value1, String value2) {
            return notBetween(inviteReward, value1, value2);
        }
        public MallWalletExample.Criteria andUserIdIsNull() {
            return isNull(userId);
        }

        public MallWalletExample.Criteria andUserIdIsNotNull() {
            return isNotNull(userId);
        }

        public MallWalletExample.Criteria andUserIdEqualTo(Long value) {
            return equalTo(userId, value);
        }

        public MallWalletExample.Criteria andUserIdNotEqualTo(Long value) {
            return notEqualTo(userId, value);
        }

        public MallWalletExample.Criteria andUserIdGreaterThan(Long value) {
            return greaterThan(userId, value);
        }

        public MallWalletExample.Criteria andUserIdGreaterThanOrEqualTo(Long value) {
            return greaterThanOrEqualTo(userId, value);
        }

        public MallWalletExample.Criteria andUserIdLessThan(Long value) {
            return lessThan(userId, value);
        }

        public MallWalletExample.Criteria andUserIdLessThanOrEqualTo(Long value) {
            return lessThanOrEqualTo(userId, value);
        }

        public MallWalletExample.Criteria andUserIdIn(List<Long> values) {
            return in(userId, values);
        }

        public MallWalletExample.Criteria andUserIdNotIn(List<Long> values) {
            return notIn(userId, values);
        }

        public MallWalletExample.Criteria andUserIdBetween(Long value1, Long value2) {
            return between(userId, value1, value2);
        }

        public MallWalletExample.Criteria andUserIdNotBetween(Long value1, Long value2) {
            return notBetween(userId, value1, value2);
        }
        public MallWalletExample.Criteria andMallMoneyIsNull() {
            return isNull(mallMoney);
        }

        public MallWalletExample.Criteria andMallMoneyIsNotNull() {
            return isNotNull(mallMoney);
        }

        public MallWalletExample.Criteria andMallMoneyEqualTo(String value) {
            return equalTo(mallMoney, value);
        }

        public MallWalletExample.Criteria andMallMoneyNotEqualTo(String value) {
            return notEqualTo(mallMoney, value);
        }

        public MallWalletExample.Criteria andMallMoneyGreaterThan(String value) {
            return greaterThan(mallMoney, value);
        }

        public MallWalletExample.Criteria andMallMoneyGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(mallMoney, value);
        }

        public MallWalletExample.Criteria andMallMoneyLessThan(String value) {
            return lessThan(mallMoney, value);
        }

        public MallWalletExample.Criteria andMallMoneyLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(mallMoney, value);
        }

        public MallWalletExample.Criteria andMallMoneyLike(String value) {
            return like(mallMoney, value);
        }

        public MallWalletExample.Criteria andMallMoneyNotLike(String value) {
            return notLike(mallMoney, value);
        }

        public MallWalletExample.Criteria andMallMoneyIn(List<String> values) {
            return in(mallMoney, values);
        }

        public MallWalletExample.Criteria andMallMoneyNotIn(List<String> values) {
            return notIn(mallMoney, values);
        }

        public MallWalletExample.Criteria andMallMoneyBetween(String value1, String value2) {
            return between(mallMoney, value1, value2);
        }

        public MallWalletExample.Criteria andMallMoneyNotBetween(String value1, String value2) {
            return notBetween(mallMoney, value1, value2);
        }
    }
}